<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<script type="text/javascript">
let arr = [

  { id: 1, parent: null, text: '菜单1' },

  { id: 11, parent: 1, text: '菜单1-1' },

  { id: 111, parent: 11, text: '菜单1-1-1' },
  { id: 112, parent: 11, text: '菜单1-1-2' },
  
  { id: 12, parent: 1, text: '菜单1-2' },

  { id: 2, parent: null, text: '菜单2' },
  { id: 21, parent: 2, text: '菜单2-1' },
  { id: 22, parent: 2, text: '菜单2-2' },
];

function getTreeList(arr,id,list){
   for(item of arr){
    if (item.parent == id) {
      list.push(item)
    }
   }
   for ( i of list){
   i.children=[]
   getTreeList(arr,i.id,i.children)
}
return list
}


 
let res = getTreeList(arr,null,[])   

console.log('res',res)
	 </script>
</body>
</html>